#ifndef KERNEL_STRING_H
#define KERNEL_STRING_H

#include <type.h>

// 拷贝字符串
char *strcpy(char *dest, const char *src);
// 两个字符串拼接到dest
char *strcat(char *dest, const char *src);
// 字符串长度，不含\0
size_t strlen(const char *str);
// 比较字符串，lhs==rhs 0, lhs<rhs -1, lhs>rhs 1
int strcmp(const char *lhs, const char *rhs);
// 在str字符串里从左找到第一个ch字符，找到返回指针，未找到返回NULL
char *strchr(const char *str, int ch);
// 在str字符串里从右找到第一个ch字符，找到返回指针，未找到返回NULL
char *strrchr(const char *str, int ch);
// 拷贝，包括\0
int memcmp(const void *lhs, const void *rhs, size_t count);
void *memset(void *dest, int ch, size_t count);
// 拷贝count，包括\0
void *memcpy(void *dest, const void *src, size_t count);
// 从一段内存找到一个字符
void *memchr(const void *ptr, int ch, size_t count);

#endif